#include<stdlib.h>
#include"myshell.h"
#include<unistd.h>

#define SIZE 1024//命令字符串最长长度
int main()
{
    char commandstr[SIZE];
    while(true)
    {
        //0、初始化数据
        InitGlobal();
        //1、打印命令行提示符
        PrintCommand();
       // exit(0);
       
       // 2、获取用户输入的命令字符串
       if(!GetCommandStr(commandstr,SIZE))
            continue;//空字符串不进行解析
        //printf("test-cmdstr:%s\n",commandstr);

        //3、解析命令字符串
        //ls -a -l
        ParCommandStr(commandstr);

        //4、内建命令由shell自己完成
        if(InCommandExec())
        {
            continue;
        }

        //5、执行命令，让子进程执行
        ForkAndExec();
        
    }
    return 0;
}
